1. Technical Field
The present invention relates in general to data processing systems and, in particular, to methods and systems for distributing electronic publications to subscribers at data processing systems. Still more particularly, the present invention relates to methods, systems and programs for optimizing the efficiency with which serial electronic publications are distributed to subscribers.
2. Description of the Related Art
Not long ago, magazines, newspapers, technical bulletins, and other serial publications were distributed almost exclusively in hardcopy, paper format. In recent years, however, the Internet and smaller computer networks have attained unprecedented popularity and ubiquity, making it easier than ever before to link widespread communities of individuals with common interests. Consequently, as the number of Internet users has grown, so has the utilization of electronic publications. For example, Dow Jones & Company, Inc. now offers subscriptions to the traditional, paper format of THE WALL STREET JOURNAL®, as well as subscriptions to an electronic format that is delivered to subscribers electronically via network connections. Among the advantages available to electronic publications, relative to hardcopy publications, are increased ease and rapidity of delivery from the publisher to the subscriber and support for multimedia content (such as audio, animation, etc.).
Currently, the most commonly utilized network architecture, and the architecture utilized by the Internet, is the client/server architecture. Within computer networks utilizing that architecture, electronic publications are typically distributed or published (i.e., transmitted) utilizing either a “client pull” or a “server push” technique. In either case, the publication is transmitted from a server data processing system to subscribers at client data processing systems. However, with client pull, the clients initiate the download of each issue, whereas in server push, the server does the initiating (after the clients have provided permission for the server to write to their storage).
Client pull may be utilized when a subscriber is unable to provide a publisher with a persistent network address for receiving each issue of a publication. For the purposes of this document, a network address is persistent if it is always associated with the same subscriber and substantially always receptive. For example, individuals who connect to the Internet through dial-up connections to Internet Service Providers (ISPs) generally do not maintain permanent connections and do not obtain the same Internet Protocol (IP) addresses each time they establish dial-up connections. Nevertheless, once a dial-up subscriber has established a non-persistent (or “temporary”) connection, client pull allows that subscriber to download issues of publications, utilizing the network address associated with that temporary connection.
Currently, dial-up connections are the most widely utilized mechanism for connecting clients to the Internet. However, the number of individuals with persistent network addresses is on the increase, as cable modems, direct T1 lines, and similar technologies appear to be gradually replacing dial-up connections as the connection mechanism of choice for Internet users.
When a subscriber is able to provide a publisher with a persistent network address, server push may be utilized to transmit issues. For example, subscribers who maintain permanent Internet connections via cable modems, direct T1 lines, and the like are able to provide persistent network addresses when subscribing to publications. In addition, efforts are currently under way to develop network protocols that support server push to subscribers without persistent network addresses, such as traveling subscribers who connect to the Internet via wireless services.
Push techniques may also be utilized to push content from a publishing server to one or more intermediate servers, in anticipation of dial-up subscribers opening temporary connections to those intermediate servers. The content is subsequently downloaded from an intermediate server by a dial-up subscriber, for example automatically when the subscriber connects to the network, in response to operator input initiating the download, or in response to some other event indicating that the client data processing system is ready to receive the content. For example, serials can be distributed from a publishing server to subscribers via Internet e-mail, with issues being pushed to e-mail servers associated with the subscribers, even though the subscribers might not be connected at that time to the network. Once the subscribers do connect to their respective e-mail servers, the e-mailed issues may be downloaded to the subscriber's client data processing systems. The download can happen automatically, according to a predetermined schedule in client software (such as an e-mail client), or in response to other conditions, such as an explicit request from a subscriber to check for new mail.
Push techniques provide a number of advantages, relative to pull techniques. For instance, when push is utilized, the load on the publishing server (or servers) may be balanced according to a publishing schedule. For example, a daily issue of a publication may be ready for distribution at midnight and expected, by 80,000 subscribers, to be available at client data processing systems by 8:00 a.m. With push, the server may merely transmit the issue to 10,000 subscribers per hour to meet the distribution objectives. With pull, by contrast, if all of the clients request the issue between 7:00 and 8:00 a.m., the server must transmit the issue at a rate of at least 80,000 subscribers per hour to service all of the subscribers effectively. Also, push techniques allow publishers to distribute supplemental content, such as news flashes, to subscribers in a timely manner.
However, electronic publications in general, and pushed publications in particular, also share some disadvantages with hardcopy publications, including problems with overloading a subscriber with unwanted issues of a publication. The problem of overload may occur, for example, when a subscriber is too busy to read all of the issues of publications that are being delivered, or when the subscriber is on vacation, for instance, and issues are accumulating unread on the subscriber's data processing system.
Consequently, what is needed is a way to reduce or eliminate the inefficiencies associated with transmitting unwanted issues of a publication and storing those issues in a client or in an intermediate server. In addition, it would be advantageous to manage the publication process so as to prevent unwanted issues from being presented to the subscriber, thereby freeing the subscriber from the task of manually sorting through a number of issues to distinguish the wanted from the unwanted and purging the latter.